<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Core Register Access Functions</title>
<title>CMSIS-Core (Cortex-M): Core Register Access Functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="cmsis.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script type="text/javascript" src="printComponentTabs.js"></script>
<script type="text/javascript" src="cmsis_footer.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 46px;">
  <td id="projectlogo"><img alt="Logo" src="CMSIS_Logo_Final.png"/></td>
  <td style="padding-left: 0.5em;">
   <div id="projectname">CMSIS-Core (Cortex-M)
   &#160;<span id="projectnumber">Version 5.6.0</span>
   </div>
   <div id="projectbrief">CMSIS-Core support for Cortex-M processor-based devices</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<div id="CMSISnav" class="tabs1">
    <ul class="tablist">
      <script type="text/javascript">
		<!--
		writeComponentTabs.call(this);
		//-->
      </script>
	  </ul>
</div>
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Usage&#160;and&#160;Description</span></a></li>
      <li><a href="modules.html"><span>Reference</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('group__coreregister__trustzone__functions.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">Core Register Access Functions<div class="ingroups"><a class="el" href="group__trustzone__functions.html">TrustZone for Armv8-M/v8.1-M</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Core register Access functions related to TrustZone for Armv8-M.  
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga27bf1f88e794c30808ee73a29d46e358"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga27bf1f88e794c30808ee73a29d46e358">__TZ_get_CONTROL_NS</a> (void)</td></tr>
<tr class="memdesc:ga27bf1f88e794c30808ee73a29d46e358"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Control register (non-secure)  <a href="#ga27bf1f88e794c30808ee73a29d46e358">More...</a><br/></td></tr>
<tr class="separator:ga27bf1f88e794c30808ee73a29d46e358"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3eb150204e6d389d5b49065179b9cde5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga3eb150204e6d389d5b49065179b9cde5">__TZ_set_CONTROL_NS</a> (uint32_t control)</td></tr>
<tr class="memdesc:ga3eb150204e6d389d5b49065179b9cde5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Control register (non-secure)  <a href="#ga3eb150204e6d389d5b49065179b9cde5">More...</a><br/></td></tr>
<tr class="separator:ga3eb150204e6d389d5b49065179b9cde5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga40ff8336c6d09af6da1081d4e4adc126"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga40ff8336c6d09af6da1081d4e4adc126">__TZ_get_PSP_NS</a> (void)</td></tr>
<tr class="memdesc:ga40ff8336c6d09af6da1081d4e4adc126"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Process Stack Pointer (non-secure)  <a href="#ga40ff8336c6d09af6da1081d4e4adc126">More...</a><br/></td></tr>
<tr class="separator:ga40ff8336c6d09af6da1081d4e4adc126"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaea8db21c00cfa4144ee74dc65dbd7580"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gaea8db21c00cfa4144ee74dc65dbd7580">__TZ_set_PSP_NS</a> (uint32_t topOfProcStack)</td></tr>
<tr class="memdesc:gaea8db21c00cfa4144ee74dc65dbd7580"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Process Stack Pointer (non-secure)  <a href="#gaea8db21c00cfa4144ee74dc65dbd7580">More...</a><br/></td></tr>
<tr class="separator:gaea8db21c00cfa4144ee74dc65dbd7580"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab3aa15eb4f352e230b9f7a3e8856a9e9"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gab3aa15eb4f352e230b9f7a3e8856a9e9">__TZ_get_MSP_NS</a> (void)</td></tr>
<tr class="memdesc:gab3aa15eb4f352e230b9f7a3e8856a9e9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Main Stack Pointer (non-secure)  <a href="#gab3aa15eb4f352e230b9f7a3e8856a9e9">More...</a><br/></td></tr>
<tr class="separator:gab3aa15eb4f352e230b9f7a3e8856a9e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga41c3ac2d9af23c40647c053ad7d564e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga41c3ac2d9af23c40647c053ad7d564e7">__TZ_set_MSP_NS</a> (uint32_t topOfMainStack)</td></tr>
<tr class="memdesc:ga41c3ac2d9af23c40647c053ad7d564e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Main Stack Pointer (non-secure)  <a href="#ga41c3ac2d9af23c40647c053ad7d564e7">More...</a><br/></td></tr>
<tr class="separator:ga41c3ac2d9af23c40647c053ad7d564e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaaf2aaf904b25ed17fd3e5e63f8e029b"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gaaaf2aaf904b25ed17fd3e5e63f8e029b">__TZ_get_SP_NS</a> (void)</td></tr>
<tr class="memdesc:gaaaf2aaf904b25ed17fd3e5e63f8e029b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Stack Pointer (non-secure)  <a href="#gaaaf2aaf904b25ed17fd3e5e63f8e029b">More...</a><br/></td></tr>
<tr class="separator:gaaaf2aaf904b25ed17fd3e5e63f8e029b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab7263167cb006aeeb04b68e579dae015"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gab7263167cb006aeeb04b68e579dae015">__TZ_set_SP_NS</a> (uint32_t topOfStack)</td></tr>
<tr class="memdesc:gab7263167cb006aeeb04b68e579dae015"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Stack Pointer (non-secure)  <a href="#gab7263167cb006aeeb04b68e579dae015">More...</a><br/></td></tr>
<tr class="separator:gab7263167cb006aeeb04b68e579dae015"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7cc3271c79e619f8838e8767df3cb509"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga7cc3271c79e619f8838e8767df3cb509">__TZ_get_PRIMASK_NS</a> (void)</td></tr>
<tr class="memdesc:ga7cc3271c79e619f8838e8767df3cb509"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Priority Mask (non-secure)  <a href="#ga7cc3271c79e619f8838e8767df3cb509">More...</a><br/></td></tr>
<tr class="separator:ga7cc3271c79e619f8838e8767df3cb509"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga6686c2ab5756b5049fad1644e89b3340"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga6686c2ab5756b5049fad1644e89b3340">__TZ_set_PRIMASK_NS</a> (uint32_t priMask)</td></tr>
<tr class="memdesc:ga6686c2ab5756b5049fad1644e89b3340"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Priority Mask (non-secure)  <a href="#ga6686c2ab5756b5049fad1644e89b3340">More...</a><br/></td></tr>
<tr class="separator:ga6686c2ab5756b5049fad1644e89b3340"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga624509c924d2583f0d4dca6ab270f051"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga624509c924d2583f0d4dca6ab270f051">__TZ_get_BASEPRI_NS</a> (void)</td></tr>
<tr class="memdesc:ga624509c924d2583f0d4dca6ab270f051"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Base Priority (non-secure)  <a href="#ga624509c924d2583f0d4dca6ab270f051">More...</a><br/></td></tr>
<tr class="separator:ga624509c924d2583f0d4dca6ab270f051"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga92c187f0b4d53627b59e0fd0bda0b0df"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga92c187f0b4d53627b59e0fd0bda0b0df">__TZ_set_BASEPRI_NS</a> (uint32_t basePri)</td></tr>
<tr class="memdesc:ga92c187f0b4d53627b59e0fd0bda0b0df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Base Priority (non-secure)  <a href="#ga92c187f0b4d53627b59e0fd0bda0b0df">More...</a><br/></td></tr>
<tr class="separator:ga92c187f0b4d53627b59e0fd0bda0b0df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga578b41087f207e1a475daae6cc8a28dc"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga578b41087f207e1a475daae6cc8a28dc">__TZ_get_FAULTMASK_NS</a> (void)</td></tr>
<tr class="memdesc:ga578b41087f207e1a475daae6cc8a28dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Fault Mask (non-secure)  <a href="#ga578b41087f207e1a475daae6cc8a28dc">More...</a><br/></td></tr>
<tr class="separator:ga578b41087f207e1a475daae6cc8a28dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4f0912db7bc65439d23817c1d372a7a4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga4f0912db7bc65439d23817c1d372a7a4">__TZ_set_FAULTMASK_NS</a> (uint32_t faultMask)</td></tr>
<tr class="memdesc:ga4f0912db7bc65439d23817c1d372a7a4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Fault Mask (non-secure)  <a href="#ga4f0912db7bc65439d23817c1d372a7a4">More...</a><br/></td></tr>
<tr class="separator:ga4f0912db7bc65439d23817c1d372a7a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5da646ec291b6a183f38497ce92be51c"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga5da646ec291b6a183f38497ce92be51c">__TZ_get_PSPLIM_NS</a> (void)</td></tr>
<tr class="memdesc:ga5da646ec291b6a183f38497ce92be51c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Process Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always.  <a href="#ga5da646ec291b6a183f38497ce92be51c">More...</a><br/></td></tr>
<tr class="separator:ga5da646ec291b6a183f38497ce92be51c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga81e0995ee0fd2a9dcd9e9681bc22c76f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#ga81e0995ee0fd2a9dcd9e9681bc22c76f">__TZ_set_PSPLIM_NS</a> (uint32_t ProcStackPtrLimit)</td></tr>
<tr class="memdesc:ga81e0995ee0fd2a9dcd9e9681bc22c76f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Process Stack Pointer (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always.  <a href="#ga81e0995ee0fd2a9dcd9e9681bc22c76f">More...</a><br/></td></tr>
<tr class="separator:ga81e0995ee0fd2a9dcd9e9681bc22c76f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gada00853d3e49fa8d21f375c53d28fa51"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gada00853d3e49fa8d21f375c53d28fa51">__TZ_get_MSPLIM_NS</a> (void)</td></tr>
<tr class="memdesc:gada00853d3e49fa8d21f375c53d28fa51"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get Main Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always.  <a href="#gada00853d3e49fa8d21f375c53d28fa51">More...</a><br/></td></tr>
<tr class="separator:gada00853d3e49fa8d21f375c53d28fa51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad2013f4d4311d6db253594a12d192617"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__coreregister__trustzone__functions.html#gad2013f4d4311d6db253594a12d192617">__TZ_set_MSPLIM_NS</a> (uint32_t MainStackPtrLimit)</td></tr>
<tr class="memdesc:gad2013f4d4311d6db253594a12d192617"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set Main Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always.  <a href="#gad2013f4d4311d6db253594a12d192617">More...</a><br/></td></tr>
<tr class="separator:gad2013f4d4311d6db253594a12d192617"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Description</h2>
<p>Core register Access functions related to TrustZone for Armv8-M. </p>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga624509c924d2583f0d4dca6ab270f051"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_BASEPRI_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Base Priority (non-secure) </p>
<p>Returns the current value of the non-secure Base Priority register when in secure state. </p>
<dl class="section return"><dt>Returns</dt><dd>Base Priority register value </dd></dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#ga32da759f46e52c95bcfbde5012260667">__get_BASEPRI</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga27bf1f88e794c30808ee73a29d46e358"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_CONTROL_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Control register (non-secure) </p>
<p>Returns the content of the non-secure Control register when in secure mode. </p>
<dl class="section return"><dt>Returns</dt><dd>non-secure Control register value </dd></dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#ga963cf236b73219ce78e965deb01b81a7">__get_CONTROL</a>; <a class="el" href="unionCONTROL__Type.html" title="Union type to access the Control Registers (CONTROL). ">CONTROL_Type</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga578b41087f207e1a475daae6cc8a28dc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_FAULTMASK_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Fault Mask (non-secure) </p>
<p>Returns the current value of the non-secure Fault Mask register when in secure state. </p>
<dl class="section return"><dt>Returns</dt><dd>Fault Mask register value </dd></dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#gaa78e4e6bf619a65e9f01b4af13fed3a8">__get_FAULTMASK</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="gab3aa15eb4f352e230b9f7a3e8856a9e9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_MSP_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Main Stack Pointer (non-secure) </p>
<p>Returns the current value of the non-secure Main Stack Pointer (MSP) when in secure state. </p>
<dl class="section return"><dt>Returns</dt><dd>MSP register value </dd></dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#gab898559392ba027814e5bbb5a98b38d2">__get_MSP</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="gada00853d3e49fa8d21f375c53d28fa51"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_MSPLIM_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Main Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. </p>
<p>Returns the current value of the non-secure Main Stack Pointer Limit(MSPLIM) when in secure state. </p>
<dl class="section return"><dt>Returns</dt><dd>MSPLIM register value </dd></dl>

</div>
</div>
<a class="anchor" id="ga7cc3271c79e619f8838e8767df3cb509"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_PRIMASK_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Priority Mask (non-secure) </p>
<p>Returns the current state of the non-secure priority mask bit from the Priority Mask register when in secure state. </p>
<dl class="section return"><dt>Returns</dt><dd>Priority Mask value </dd></dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#ga799b5d9a2ae75e459264c8512c7c0e02">__get_PRIMASK</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga40ff8336c6d09af6da1081d4e4adc126"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_PSP_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Process Stack Pointer (non-secure) </p>
<p>Returns the current value of the non-secure Process Stack Pointer (PSP) when in secure state. </p>
<dl class="section return"><dt>Returns</dt><dd>PSP register value </dd></dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#ga914dfa8eff7ca53380dd54cf1d8bebd9">__get_PSP</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga5da646ec291b6a183f38497ce92be51c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_PSPLIM_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Process Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. </p>
<p>Returns the current value of the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. </p>
<dl class="section return"><dt>Returns</dt><dd>PSPLIM register value </dd></dl>

</div>
</div>
<a class="anchor" id="gaaaf2aaf904b25ed17fd3e5e63f8e029b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">uint32_t __TZ_get_SP_NS </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get Stack Pointer (non-secure) </p>
<p>Returns the current value of the non-secure Stack Pointer (SP) when in secure state. </p>
<dl class="section return"><dt>Returns</dt><dd>SP register value </dd></dl>

</div>
</div>
<a class="anchor" id="ga92c187f0b4d53627b59e0fd0bda0b0df"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_BASEPRI_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>basePri</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Base Priority (non-secure) </p>
<p>Assigns the given value to the non-secure Base Priority register when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">basePri</td><td>Base Priority value to set </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#ga360c73eb7ffb16088556f9278953b882">__set_BASEPRI</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga3eb150204e6d389d5b49065179b9cde5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_CONTROL_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>control</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Control register (non-secure) </p>
<p>Writes the given value to the non-secure Control register when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">control</td><td>Control register value to set </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#gac64d37e7ff9de06437f9fb94bbab8b6c">__set_CONTROL</a>; <a class="el" href="unionCONTROL__Type.html" title="Union type to access the Control Registers (CONTROL). ">CONTROL_Type</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga4f0912db7bc65439d23817c1d372a7a4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_FAULTMASK_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>faultMask</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Fault Mask (non-secure) </p>
<p>Assigns the given value to the non-secure Fault Mask register when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">faultMask</td><td>Fault Mask value to set </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#gaa5587cc09031053a40a35c14ec36078a">__set_FAULTMASK</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga41c3ac2d9af23c40647c053ad7d564e7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_MSP_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>topOfMainStack</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Main Stack Pointer (non-secure) </p>
<p>Assigns the given value to the non-secure Main Stack Pointer (MSP) when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">topOfMainStack</td><td>Main Stack Pointer value to set </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#ga0bf9564ebc1613a8faba014275dac2a4">__set_MSP</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="gad2013f4d4311d6db253594a12d192617"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_MSPLIM_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>MainStackPtrLimit</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Main Stack Pointer Limit (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. </p>
<p>Assigns the given value to the non-secure Main Stack Pointer Limit (MSPLIM) when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">MainStackPtrLimit</td><td>Main Stack Pointer value to set </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ga6686c2ab5756b5049fad1644e89b3340"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_PRIMASK_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>priMask</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Priority Mask (non-secure) </p>
<p>Assigns the given value to the non-secure Priority Mask register when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">priMask</td><td>Priority Mask </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#ga70b4e1a6c1c86eb913fb9d6e8400156f">__set_PRIMASK</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="gaea8db21c00cfa4144ee74dc65dbd7580"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_PSP_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>topOfProcStack</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Process Stack Pointer (non-secure) </p>
<p>Assigns the given value to the non-secure Process Stack Pointer (PSP) when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">topOfProcStack</td><td>Process Stack Pointer value to set </td></tr>
  </table>
  </dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><ul>
<li><a class="el" href="group__Core__Register__gr.html#ga48e5853f417e17a8a65080f6a605b743">__set_PSP</a> </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="ga81e0995ee0fd2a9dcd9e9681bc22c76f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_PSPLIM_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>ProcStackPtrLimit</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Process Stack Pointer (non-secure) Devices without Armv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure Stack Pointer Limit register hence zero is returned always. </p>
<p>Assigns the given value to the non-secure Process Stack Pointer Limit (PSPLIM) when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">ProcStackPtrLimit</td><td>Process Stack Pointer Limit value to set </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="gab7263167cb006aeeb04b68e579dae015"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void __TZ_set_SP_NS </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>topOfStack</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Set Stack Pointer (non-secure) </p>
<p>Assigns the given value to the non-secure Stack Pointer (SP) when in secure state. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">topOfStack</td><td>Stack Pointer value to set </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">
      <script type="text/javascript">
        <!--
        writeFooter.call(this);
        //-->
      </script>    
    </li>
  </ul>
</div>
</body>
</html>
